Message subscription based on message aggregate characteristics

ABSTRACT

A method for message subscription based on a message aggregate characteristic is described. The method includes receiving a message subscription from a user. The message subscription is based on the message aggregate characteristic including an aspect other than textual content and bibliographic content. The method also includes determining a published message in response to receiving the message subscription. The published message satisfies the message aggregate characteristic. The method also includes providing an indication of the published message to the user.

BACKGROUND

Electronic communications may be delivered through a variety of methods,and to different numbers of recipients. One-to-one methods includesynchronous methods, such as voice telephony, and asynchronous methods,such as email. One-to-many methods include various message publishingmodels, such as broadcast or publish-subscribe approaches. Messages maybe viewed over a web browser or other application on different kinds ofelectronic devices. Additionally, recipients may subscribe to many ofthe different publishing models to automatically receive messages of acertain type, such as articles or emails, through a subscriptionservice.

Increasing connectivity to the growing amount of varied electronic datadrives a need for flexibility in subscriptions for desired content.Improving the ways in which users are able to specify what they wantallows them to receive data more closely suited to their personalpreferences, and to filter the ever increasing amount of available datato the most relevant content.

SUMMARY

Embodiments of a method are described. In one embodiment, the method isa method for message subscription based on a message aggregatecharacteristic. The method includes receiving a message subscriptionfrom a user. The message subscription is based on the message aggregatecharacteristic including an aspect other than textual content andbibliographic content. The method also includes determining a publishedmessage in response to receiving the message subscription. The publishedmessage satisfies the message aggregate characteristic. The method alsoincludes providing an indication of the published message to the user.Other embodiments of the method, a system, and a computer programproduct are also described.

Other aspects and advantages of embodiments of the present inventionwill become apparent from the following detailed description, taken inconjunction with the accompanying drawings, illustrated by way ofexample of the principles of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 depicts a schematic diagram of one embodiment of a messagingsystem.

FIG. 2 depicts a flowchart diagram of one embodiment of the operationsof the messaging system of FIG. 1.

FIG. 3 depicts a schematic diagram of one embodiment of a messagesubscription.

FIG. 4 depicts a flowchart diagram of one embodiment of a method formessage subscription based on a message aggregate characteristic.

Throughout the description, similar reference numbers may be used toidentify similar elements.

DETAILED DESCRIPTION

It will be readily understood that the components of the embodiments asgenerally described herein and illustrated in the appended figures couldbe arranged and designed in a wide variety of different configurations.Thus, the following more detailed description of various embodiments, asrepresented in the figures, is not intended to limit the scope of thepresent disclosure, but is merely representative of various embodiments.While the various aspects of the embodiments are presented in drawings,the drawings are not necessarily drawn to scale unless specificallyindicated.

The present invention may be embodied in other specific forms withoutdeparting from its spirit or essential characteristics. The describedembodiments are to be considered in all respects only as illustrativeand not restrictive. The scope of the invention is, therefore, indicatedby the appended claims rather than by this detailed description. Allchanges which come within the meaning and range of equivalency of theclaims are to be embraced within their scope.

Reference throughout this specification to features, advantages, orsimilar language does not imply that all of the features and advantagesthat may be realized with the present invention should be or are in anysingle embodiment of the invention. Rather, language referring to thefeatures and advantages is understood to mean that a specific feature,advantage, or characteristic described in connection with an embodimentis included in at least one embodiment of the present invention. Thus,discussions of the features and advantages, and similar language,throughout this specification may, but do not necessarily, refer to thesame embodiment.

Furthermore, the described features, advantages, and characteristics ofthe invention may be combined in any suitable manner in one or moreembodiments. One skilled in the relevant art will recognize, in light ofthe description herein, that the invention can be practiced without oneor more of the specific features or advantages of a particularembodiment. In other instances, additional features and advantages maybe recognized in certain embodiments that may not be present in allembodiments of the invention.

Reference throughout this specification to “one embodiment,” “anembodiment,” or similar language means that a particular feature,structure, or characteristic described in connection with the indicatedembodiment is included in at least one embodiment of the presentinvention. Thus, the phrases “in one embodiment,” “in an embodiment,”and similar language throughout this specification may, but do notnecessarily, all refer to the same embodiment.

While many embodiments are described herein, at least some of thedescribed embodiments present a system and method for messagesubscription based on a message aggregate characteristic. Morespecifically, the system allows users to create message subscriptionsbased on a message aggregate characteristic that has at least one aspectother than textual and biographical information. In some embodiments,the message aggregate characteristics may be used in conjunction withtextual or biographical information to determined published messagesthat fit criteria specified by a user.

Conventional subscriptions typically rely on keyword subscriptions orsubscriptions based on an originator of the messages. The keywordstypically include a topic related to the message or a word used in themessage. The originator may define a source of the message.Subscriptions based on textual or biographical information may be usefulfor obtaining messages by topic keyword or from a specific source thatmay typically provide content in which the user may be interested, butmay be limited in the flexibility that some users may desire. Suchsubscriptions often include messages in which the user may not beinterested.

Consequently, a system and method that allows users to customize messagesubscriptions based on message aggregate characteristics that representaspects of the messages other than topical keyword or originatorcharacteristics provides greater flexibility to the users, and mayprovide messages more specifically tailored to the preferences of theusers. For example, such a system allows users to subscribe to messagesdirected to certain demographics, topics generated from within aspecified distance of a location that is specified in the messagesubscription, and other such message aggregate characteristics.

FIG. 1 depicts a schematic diagram of one embodiment of a messagingsystem 100. The depicted messaging system 100 includes variouscomponents, described in more detail below, that are capable ofperforming the functions and operations described herein. In oneembodiment, at least some of the components of the messaging system 100are implemented in a computer system. For example, the functionality ofone or more components of the messaging system 100 may be implemented bycomputer program instructions stored on a computer memory device 102 andexecuted by a processing device 104 such as a CPU. The messaging system100 may include other components, such as input/output devices 106, adisk storage drive 108, a subscription engine 110, a publishing engine122, and a receiver 120. Some or all of the components of the messagingsystem 100 may be stored on a single computing device 104 or on anetwork of computing devices 104, including a wireless communicationnetwork. The messaging system 100 may include more or fewer componentsor subsystems than those depicted herein. In some embodiments, themessaging system 100 may be used to implement the methods describedherein as depicted in FIG. 4.

A user may generate a message subscription 112 to receive messages 118relevant to a user's interests or preferences from a publishing engine122. The messages 118 may include all published messages from a corpusof messages which may include one or more types of messages from thepublishing engine 122, including articles, text messages, synopses ofmessages, and other types. The messaging system 100 may include areceiver 120 to receive the subscription from the user. The subscriptionmay be stored on a memory device 102 on a computing device such as aserver. The server may manage subscriptions for many users. In someembodiments, the corpus of messages 118 may be stored on a network ofcomputing devices. In other embodiments, the corpus of messages 118 maybe stored on multiple networks or connected computing devices such asthe Internet.

When the messaging system 100 attempts to determine a published message118 to send to the user, the messaging system 100 may pull the corpus ofmessages 118 from one or more sources. In one embodiment, the messagingsystem 100 receives a published message 118 and determines if thepublished message 118 matches the subscription. This may be done at aclient-side broker or at a broker close to the user. Some of theoperations of the messaging system 100 may occur at different locationswithin the messaging system 100.

In other embodiments, the messaging system 100 may search for publishedmessages 118 to send to the user at any time. For example, the messagingsystem 100 may search for messages 118 when the subscription is firstcreated. The messaging system 100 may search for messages 118 atspecified time intervals. The messaging system 100 may search formessages 118 to send to the user when the messaging system 100 receivesnew messages 118 from any source. In other embodiments, the messagingsystem 100 may determine published messages 118 to send to the user atother times or in other configurations.

The user may select one or more message characteristics 114 for thesubscription. The characteristics 114 may determine certain aspects ofthe messages 118 to be retrieved for the user. In one embodiment, thesubscription includes at least one characteristic 114 that does notrepresent an originator of the messages 118 or keyword in the messages118, though the subscription may also include one or more characteristic114 that does represent an originator of the messages 118 or keywords inthe messages 118.

In one embodiment, the messaging system 100 maintains summary dataassociated with a limited set of possible subscriptions 112 for a user.For example, the messaging system 100 may support a large, but limited,number of possible ways to subscribe, which may be organized intological “buckets.” When the messaging system 100 receives a newpublished message 118, the messaging system 100 checks the summary dataassociated with each of the buckets and selects the bucket satisfied bythe published message 118. The messaging system 100 then delivers thepublished message 118 to each user that has specified the correspondingsubscription criteria from the satisfied bucket according to the users'subscriptions 112.

The message characteristics 114 associated with a given publishedmessage 118 may be based on a comparison of the published message 118 toother messages 118 in an aggregation 116 of messages 118. Theaggregation 116 of messages 118 may be included in the corpus ofmessages 118. The published message 118 may share at least onecharacteristic 114 with some or all of the other messages 118 in theaggregation 116 of messages 118 and may have at least one differentcharacteristic 114 than some or all of the messages 118 in theaggregation 116 of messages 118.

FIG. 2 depicts a flowchart diagram of one embodiment of the operationsof the messaging system 100 of FIG. 1. The user 200 may create a messagesubscription 112 via a web page, an application or other interactivemechanism. The message subscription 112 may be for any articles or othermessages 118 that may be available in any publish-subscribe system. Themessaging system 100 may be used in conjunction with any number ofdifferent message providers, such that the user 200 may receivepublished messages 118 in various formats from many different sources.

In one embodiment, the subscription engine 110 is configured to receivethe message subscription 112 associated with the user 200. The messagesubscription 112 may be used to determine published messages 118 to sendto the user 200. In some embodiments, the published messages 118 may beselected from a large corpus 202 of messages 118. The messagesubscription 112 may select the messages 118 based on criteriaassociated with the message subscription 112 and specified by the user200. Each of the selected messages 118 may satisfy at least onecriterion of the message subscription 112.

The criteria may include a message aggregate characteristic 114 thatrelates to one or more aspects of an aggregation 116 of messages 118.The characteristic 114 may be any characteristic 114 which can bedetermined by evaluation of the aggregation 116 of messages 118, suchthat any published messages 118 selected by the messaging system 100 tosatisfy the message subscription 112 have the message aggregatecharacteristic 114. One example of a message aggregate characteristic114 includes published messages that are related to topics with highestactivity within a specified locale, messages with heavy emotionalcontent, messages related to topics within a specified demographic, andother characteristics that may be based on a comparison of the publishedmessages 118 to other messages. In some embodiments, the messageaggregate characteristics 114 are determined based on certain aspects ofmessages relative to a group of messages, such that the comparisondetermines the message aggregate characteristics 114.

The user 200 may select parameters expressing the characteristic 114 orcharacteristics 114 via a template or default choices, pull down menuchoices, check boxes or other selection mechanism. In some embodiments,the user 200 may also type in a parameter for a given characteristic114. A service providing the subscription may automatically subscribethe user 200 to one or more topics of interest for the user 200 based oninformation gathered from or about the user 200.

The subscription may be all or partially imported; for example, thesubscription may include corporate template additions that includeenterprise and non-enterprise elements. In one embodiment, an enterprisemay provide a template for employees that enable the employees to trackrelevant messages 118 about customers, products, weather, etc., and mayprovide this to a public service provider. The subscription may begenerated using a template that includes default characteristics 114 orpreferences which may be modified by the user 200 to customize thesubscription to the user's preferences.

When the messaging system 100 receives the message subscription 112associated with the user 200, the messaging system 100 may store thesubscription on a local storage device, such as a memory device 102. Themessaging system 100 may then perform a search across a corpus 202 ofpublished messages 118 for messages 118 that have characteristics 114that satisfy the subscription. The corpus 202 may include any numberand/or type of messages 118, and may be obtained from any source thatcontains published messages 118. In some embodiments, messages 118 maybe determined to have the characteristic 114 of the subscription bycomparing the messages 118 against the corpus 202 or other aggregation116 of messages 118.

When the subscription has determined at least one published message 118from the corpus 202 of messages 118 that satisfies the characteristic114, the messaging system 100 may then send an indication of thepublished message 118 to the user 200. The indication of the publishedmessage, in some embodiments, may include a link to the publishedmessage 118. In other embodiments, the indication of the publishedmessage 118 may also include all or at least some of the content of thepublished message, such as a synopsis of the published message 118. Themessaging system 100 may push the message 118 to the user 200 via anelectronic message delivery service—such as email, short messageservice, or voice transcriptions—or allow the user 200 to pull themessage 118 by logging in to a web site, for example. Other methods ofproviding an indication of the published message 118 or of providing thepublished message 118 may be used.

In one embodiment, the messaging system 100 may include a central ordistributed mechanism to determine whether the subscription isfulfilled. A centralized mechanism may analyze message distribution andcharacteristics 114 that may satisfy permitted subscription categories.When a message 118 is determined to fulfill a given allowed subscriptioncategory, a determination of whether the user 200 is to receive themessage 118 may be done at a receiving broker, a sending broker, acentralized server, or at a client.

FIG. 3 depicts a schematic diagram of one embodiment of a messagesubscription 112. In one embodiment, the message subscription 112includes at least one message aggregate characteristic 114. The user 200may select one or more message aggregate characteristics 114 toassociate with the message subscription 112. The message aggregatecharacteristic 114 may be a characteristic 114 related to one of severaldifferent aspects of a message 118 or aggregation 116 of messages 118.In various embodiments, the message aggregate characteristic 114 is acharacteristic 114 related to non-textual and non-bibliographicalcontent of the message, though the message subscription 112 may alsoinclude criteria related to textual and/or bibliographical content inaddition to the message aggregate characteristic 114.

In one embodiment, the message aggregation characteristic 114 relates toa topic activity level or frequency. The characteristic 114 may describea frequency of the topic activity within a geographical area, a desiredlevel of topic activity within a specified demographic, a desired levelof topic activity within a specified user centric network graph, or adesired amount of activity for generating messages 118 that areassociated with the topic within a geographical area. Other embodimentsmay include other types of characteristics 114 related to a topicactivity level or frequency.

The message aggregate characteristic 114 may relate to a topic maturity.For example, the characteristic 114 may describe a desired length ofactivity for a given topic or a desired level of search activity for thetopic. The length of activity for the topic may be determined based onwhen messages 118 for the topic began publishing or some other eventrelated to the topic. The search activity may be determined based anumber of keyword searches for the topic or a number of subscriptionscontaining the topic keyword. The user 200 may input a threshold levelfor the search activity or length of activity.

The message aggregate characteristic 114 may relate to a geographicalsource or location. For example, the characteristic 114 may be relatedto topics generated from within a specified distance of a location thatis specified in the message subscription 112 or topics from within aspecific location and a given demographic. This may allow the user 200to receive messages 118 that are generated within a specified distanceof a selected city, for example.

The message aggregate characteristic 114 may relate to an emotional toneof the messages 118. For example, the user 200 may subscribe to messages118 that have an indication of high emotional content. The level ofemotional content may be determined using various text analysisprocesses that are able to interpret the tone of the content.

The message aggregate characteristic 114 may include an indication ofrelevance or relation to another topic that is currently undersubscription. The user 200 may subscribe to messages 118 related totopics that are the nearest neighbors of a topic that is currently undersubscription or messages 118 having keywords that often appear inmessages 118 associated with subscription topics. For example, the user200 may automatically subscribe to messages 118 related to a specificcity as well as messages 118 related to a specific topic when it isdetermined that the specific city and specific topic are neighbors ofanother topic under subscription. In another example, the user 200 mayautomatically subscribe to messages 118 related to popular astronomicaltopics as well as messages 118 related to specific topics that aredetermined to be related to the original subscription 112—e.g. messagesrelated to popular astrophysics topics.

The message aggregate characteristic 114 may relate to an intended orde-facto demographic. For example, the characteristic 114 may describemessages 118 directed to a specific age demographic, occupationaldemographic, interest demographic or any type of demographic orcombination of demographics. The demographic for a given message 118 maybe determined based on the content of the message, or the demographicmay be determined based on subscription or viewing activity for thegiven message 118.

The message aggregate characteristic 114 may also include an indicationof message 118 or message characteristics 114, such as specific topicsor keywords, to exclude from the subscription. For example, if thecharacteristic 114 includes an indication to exclude the keywords“financial planning” from the subscription, any messages 118 includingthe specified keywords are not sent to the user 200. The characteristic114 may exclude information related to other characteristics 114, suchas those described herein. For example, the user 200 may define thecharacteristic 114 to exclude messages 118 directed to a specificdemographic, messages 118 with a certain level or tone of emotionalcontent, messages 118 with a certain level of topic maturity orfrequency, or other characteristics 114. The message aggregatecharacteristic 114 may include indications of other or additionalnon-textual and non-bibliographical characteristics 114 than aredescribed herein.

FIG. 4 depicts a flowchart diagram of one embodiment of a method 400 formessage subscription 112 based on a message aggregate characteristic114. Although the method 400 is described in conjunction with themessaging system 100 of FIG. 1, the method 400 may be used inconjunction with any type of messaging system 100.

The messaging system 100 is configured to receive 405 a messagesubscription 112 from a user 200. The message subscription 112 is basedon at least one message aggregate characteristic 114 that includes anaspect other than textual content and bibliographic content. Themessaging system 100 is configured to extract 410 the characteristic 114from the subscription 112 so that the messaging system 100 may fulfillthe criteria associated with the subscription 112.

In one embodiment, the message aggregate characteristic 114 includes anindication of frequency and/or an indication of maturity of a topic foran aggregation 116 of published messages 118. The frequency may be basedon an activity level of the published messages 118 in the aggregatewhich are related to the topic. The maturity may be based on an activitytime length of the published messages 118 in the aggregate which arerelated to the topic. In one embodiment, the message aggregatecharacteristic 114 includes a post-publication aspect of the aggregate.The post-publication aspect corresponds to data that is collected forthe aggregation 116 of messages 118 after the aggregation 116 ofmessages 118 is published. In one embodiment, the message aggregatecharacteristic 114 includes at least one of a topic generated fromwithin a specified distance of a location that is specified in themessage subscription 112, an aspect related to a currently subscribedtopic, a demographic among which the published message 118 has asubscription volume above a subscription threshold, an indication of anemotional aspect of the published message, and an indication of anaspect of a published message 118 to exclude from the messagesubscription 112.

The messaging system 100 determines 415 at least one published message118 in response to receiving the message subscription 112. The publishedmessage 118 satisfies the one or more message aggregate characteristics114 associated with the message subscription 112. In one embodiment, themessaging system 100 determines a plurality of published messages 118that satisfy the message aggregate characteristic 114.

The messaging system 100 may select a predetermined number of thepublished messages 118 according to a message scoring system todetermine which messages 118 to provide to the user 200. For example,the messaging system 100 may determine the top ten messages 118 from thepublished messages 118 that satisfy the message aggregate characteristic114 (e.g., messages 118 within ten miles of a specific geographicalarea) to provide to the user 200. In one embodiment, the location isdefined by reference to a fixed spatial grid or to existing systems(e.g., the zip code system). The location may be enhanced by aggregatingmessages 118 from within the pre-specified distance.

Once a message 118 is determined to satisfy the characteristic 114, adetermination of whether the user 200 is to receive the message 118 maybe done at a receiving broker, a sending broker, a centralized server orat a client. In another embodiment, messages 118 are scored as they aredelivered to determine whether they contribute to a permittedsubscription category. This may be aggregated to a list containing themessage identification, subscription category, and delivery status. Theselected number of top messages 118 may then be sent to those that havesubscribed to the category by the receiving or sending broker, thecentralized server, or at the client. More complex subscriptioncategories may include message topics gaining fastest in popularity,publishers gaining fastest in popularity, or other categories that mayuse various algorithms for determining which messages 118 to send to theuser 200.

When the messaging system 100 has determined one or more publishedmessages 118 that satisfy the message aggregate characteristic 114 ofthe message subscription 112, and which messages 118 of those thatsatisfy the characteristic 114 are to be sent to the user 200, themessaging system 100 provides 420 an indication of the published message118 to the user 200. This may include sending a notification with a linkto the message, sending a copy of the message 118 directly to the user200, or any type of indication of the published message 118 that allowsthe user 200 to see or access the published message 118. In oneembodiment, the messaging system 100 provides the indication of thepublished message 118 by automatically pushing the published message 118to the user 200 via an electronic delivery system. In one embodiment,the subscription provides the indication of the published message 118 byproviding the published message 118 in response to receiving a pullrequest from the user 200, for example via a web interface.

Embodiments of the invention can take the form of an entirely hardwareembodiment, an entirely software embodiment, or an embodiment containingboth hardware and software elements. In one embodiment, the invention isimplemented in software, which includes but is not limited to firmware,resident software, microcode, etc.

An embodiment of a messaging system 100 includes at least one processorcoupled directly or indirectly to memory elements through a system bussuch as a data, address, and/or control bus. The memory elements caninclude local memory employed during actual execution of the programcode, bulk storage, and cache memories which provide temporary storageof at least some program code in order to reduce the number of timescode must be retrieved from bulk storage during execution.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium may be any tangible medium that can contain, or store a programfor use by or in connection with an instruction execution system,apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code for carrying out operations for aspects of thepresent invention may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The program code may execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present invention are described below with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

Input/output or I/O devices (including but not limited to keyboards,displays, pointing devices, etc.) can be coupled to the system eitherdirectly or through intervening I/O controllers. Additionally, networkadapters also may be coupled to the system to enable the data processingsystem to become coupled to other data processing systems or remoteprinters or storage devices through intervening private or publicnetworks. Modems, cable modems, and Ethernet cards are just a few of thecurrently available types of network adapters.

In the above description, specific details of various embodiments areprovided. However, some embodiments may be practiced with less than allof these specific details. In other instances, certain methods,procedures, components, structures, and/or functions are described in nomore detail than to enable the various embodiments of the invention, forthe sake of brevity and clarity.

The flowchart and block diagrams in the figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

Although specific embodiments of the invention have been described andillustrated, the invention is not to be limited to the specific forms orarrangements of parts so described and illustrated. The scope of theinvention is to be defined by the claims appended hereto and theirequivalents.

What is claimed is:
 1. A computer program product, comprising: acomputer readable storage medium to store a computer readable program,wherein the computer readable program, when executed by a processorwithin a computer, causes the computer to perform operations for messagesubscription based on a message aggregate characteristic, the operationscomprising: receiving a message subscription from a user, wherein themessage subscription is based on the message aggregate characteristiccomprising an aspect other than textual content and bibliographiccontent; determining a published message in response to receiving themessage subscription, wherein the published message satisfies themessage aggregate characteristic; and providing an indication of thepublished message to the user.
 2. The computer program product of claim1, wherein the message aggregate characteristic comprises at least oneof an indication of frequency and an indication of maturity of a topicfor an aggregate of published messages, wherein the frequency is basedon an activity level of the published messages in the aggregate whichare related to the topic, wherein the maturity is based on an activitytime length of the published messages in the aggregate which are relatedto the topic.
 3. The computer program product of claim 1, wherein themessage aggregate characteristic comprises at least one of: a topicgenerated from within a specified distance of a location that isspecified in the message subscription; an aspect related to a currentlysubscribed topic; a demographic among which the published message has asubscription volume above a subscription threshold; an indication of anemotional aspect of the published message; and an indication of anaspect of a published message to exclude from the message subscription.4. The computer program product of claim 1, wherein determining thepublished message further comprises: determining a plurality ofpublished messages that satisfy the message aggregate characteristic;and selecting a predetermined number of the published messages accordingto a message scoring system.
 5. The computer program product of claim 1,wherein providing the indication of the published message furthercomprises automatically pushing the published message to the user via anelectronic delivery system.
 6. The computer program product of claim 1,wherein providing the indication of the published message furthercomprises providing the published message in response to receiving apull request from the user.
 7. The computer program product of claim 1,wherein the message aggregate characteristic comprises apost-publication aspect of an aggregate of messages, wherein thepost-publication aspect corresponds to data that is collected for theaggregate of messages after the aggregate of messages is published.
 8. Amethod for message subscription based on a message aggregatecharacteristic, the method comprising: receiving a message subscriptionfrom a user, wherein the message subscription is based on the messageaggregate characteristic comprising an aspect other than textual contentand bibliographic content; determining a published message in responseto receiving the message subscription, wherein the published messagesatisfies the message aggregate characteristic; and providing anindication of the published message to the user.
 9. The method of claim8, wherein the message aggregate characteristic comprises at least oneof an indication of frequency and an indication of maturity of a topicfor an aggregate of published messages, wherein the frequency is basedon an activity level of the published messages in the aggregate whichare related to the topic, wherein the maturity is based on an activitytime length of the published messages in the aggregate which are relatedto the topic.
 10. The method of claim 8, wherein the message aggregatecharacteristic comprises at least one of: a topic generated from withina specified distance of a location that is specified in the messagesubscription; an aspect related to a currently subscribed topic; ademographic among which the published message has a subscription volumeabove a subscription threshold; an indication of an emotional aspect ofthe published message; and an indication of an aspect of a publishedmessage to exclude from the message subscription.
 11. The method ofclaim 8, wherein determining the published message further comprises:determining a plurality of published messages that satisfy the messageaggregate characteristic; and selecting a predetermined number of thepublished messages according to a message scoring system.
 12. The methodof claim 8, wherein providing the indication of the published messagefurther comprises automatically pushing the published message to theuser via an electronic delivery system.
 13. The method of claim 8,wherein providing the indication of the published message furthercomprises providing the published message in response to receiving apull request from the user.
 14. The method of claim 8, wherein themessage aggregate characteristic comprises a post-publication aspect ofan aggregate of messages, wherein the post-publication aspectcorresponds to data that is collected for the aggregate of messagesafter the aggregate of messages is published.
 15. A messaging system,comprising: a memory device; a receiver configured to receive a messagesubscription from a user and to store the message subscription on thememory device, wherein the message subscription is based on a messageaggregate characteristic comprising an aspect other than textual contentand bibliographic content; and a subscription engine configured to:determine a published message in response to receiving the messagesubscription, wherein the published message satisfies the messageaggregate characteristic; and provide an indication of the publishedmessage to the user.
 16. The system of claim 15, wherein the messageaggregate characteristic comprises at least one of an indication offrequency and an indication of maturity of a topic for an aggregate ofpublished messages, wherein the frequency is based on an activity levelof the published messages in the aggregate which are related to thetopic, wherein the maturity is based on an activity time length of thepublished messages in the aggregate which are related to the topic. 17.The system of claim 15, wherein the message aggregate characteristiccomprises at least one of: a topic generated from within a specifieddistance of a location that is specified in the message subscription; anaspect related to a currently subscribed topic; a demographic amongwhich the published message has a subscription volume above asubscription threshold; an indication of an emotional aspect of thepublished message; and an indication of an aspect of a published messageto exclude from the message subscription.
 18. The system of claim 15,wherein the subscription engine is further configured to: determine aplurality of published messages that satisfy the message aggregatecharacteristic; and select a predetermined number of the publishedmessages according to a message scoring system.
 19. The system of claim15, wherein the subscription engine is further configured toautomatically push the published message to the user via an electronicdelivery system.
 20. The system of claim 15, wherein the subscriptionengine is further configured to provide the published message inresponse to receiving a pull request from the user.